package com.itany.corejava.code02_运算符;

/**
 * @author: 石小俊
 * @date: 2023年03月01日 13:41
 * @version: 1.0
 */
public class Test05_逻辑运算符 {
    public static void main(String[] args) {
        System.out.println(true & true);
        System.out.println(false & true);
        System.out.println(true && true);
        System.out.println(false && true);

        // 无论左边结果是true还是false,都会执行右边的1/0 == 0的判断
        // 此时会产生报错
        // System.out.println(false & 1/0 == 0);

        // 由于左边结果已经是false了,则不会执行右边的1/0 == 0的判断
        // 因此,此时不会产生报错
        // System.out.println(false && 1/0 == 0);

        System.out.println(true | false);
        System.out.println(true || false);

        // 无论左边结果是true还是false,右边都会执行
        // 此时产生报错
        // System.out.println(true | 1 / 0 == 0);
        // 左边为true,则不再执行右边的运算,直接返回true
        // 因此,此时不会产生报错
        System.out.println(true || 1 / 0 == 0);

        System.out.println(!true);
        System.out.println(!false);

    }

}
